home *** CD-ROM | disk | FTP | other *** search
/ Freelog Special Edition 10 / FreelogHS10.iso / Buzz / Buzz_Advanced_Pack.exe / {app} / Tools / M2Buzz / M2buzz.rev < prev    next >
Text File  |  2001-08-27  |  16KB  |  316 lines

  1.    revisions:
  2.        1st public 98/12/07: -just a mixing of the module disassembler
  3.                  by David Lai (thanks) and an 1tracker 8channel
  4.                  input buzz song
  5.                 -note and sample info, correct sample remapping
  6.                 -effects: partially note delay, pitch slides
  7.                 -no tempo information at all, no pattern break
  8.        internal 1a:        -almost completely replaced input buzz song
  9.                  with bmx-format definition by Oskari Tammelin
  10.                  (thank you)
  11.                 -rewrite of original diskoriented aproach
  12.                  to memory oriented aproach: all pattern information
  13.                  for the whole song is now stored in memory
  14.                  (necessary for multiple machines, but possibly
  15.                   difficulties with large modules (sample size doesn't matter)
  16.                   especially with my old 16bit DOS-compiler
  17.                  (other compilers: check misc.h for int and long sizes,
  18.                   portable types maybe not everywhere implemented)
  19.                 -split mod-channels to different machines
  20.         1b:        -implemented XM-loader from scratch, still
  21.                  no buzz conversion
  22.                 -add modul-loader from scratch
  23.                 -almost complete replacement of original
  24.                  module disassembler, stripping of all unused
  25.                  code (sample ripping,...)
  26.                 -reintegrate buzz conversion for modules and
  27.                  made default option: now it's really mod2buzz :)
  28.                 -implement sequence and pattern information for
  29.                  master machine
  30.  
  31.         1c:       -restrict channel number (for easyxmid)
  32.                -integrate easyxmid (start it, scan for channels,
  33.                 convert xm)
  34.                -pattern break
  35.                -primifun maybe broken
  36.                -gcc compatibilty (allows larger patterninfo)
  37.                 (run with win95 or cwsdpmi-package)
  38.            (1c ot-release for Oskari Tammelin)
  39.         1d:       -Win95 port (gcc, RSXNT):
  40.                    -converter as windowed console (m2bwin)
  41.                    -GUI for starting it       (m2bgui)
  42.  
  43.                -strip empty song positions
  44.                -correct note-offs
  45.                -midi-parser (using midilib)
  46.                -trial bmw-support
  47.         1e:       -reading of XI-files and XM instruments
  48.                 (not passed over to BUZZ yet)
  49.                -changed commandline opts (to set defaults independent from gui)
  50.                -now conversion of XM with only single sample instruments
  51.                 with roote C-4 seems to be correct
  52.                 (means: s3m->ft2->xm->m2buzz +x +w->buzz)
  53.                -corrected bug with XI's with no samples: XI-file is written
  54.                 (probably incorrect), but instrument is not included into bmw
  55.                 anymore, no remapping at the moment (is correct if all those
  56.                 instruments are at the end)
  57.                -control of patternrange -> "--" not necessary needed anymore
  58.         public v2       -GUI options save and load, ini-file handling
  59.                -reworked GUI to support all options
  60.                -documentation v2 /"help file"
  61.                -some GUI bugs removed (path handling, options)
  62.            2a       -hups, forgot/dropped the mod sample mapping,
  63.                 reimplemented, also done for XM now
  64.                -MOD and XM -> BMX with wavedata included ;)
  65.                -changed wave options:  dowave
  66.                     0) no sample info
  67.                     1) extern samples: no MOD; XM,MID: =dobmw
  68.                     2) intern samples  (default)
  69.                -read wavetable info from XI (for MIDI): gm_00.xi...gm_09.xi for channels
  70.                -track program changes: GMIDI-lib gmp_00 (drum) ....gmp_80.xi
  71.                -finally multisampling,fine tune and transposing seems allright
  72.                -little bit better volume handling (set volume)
  73.                -some crash opportunities removed
  74.          public v2.1   -adapted GUI to new options
  75.                -changed names for channel instruments to gmc_01.xi...gmc10.xi (16 channels)
  76.                -made Winhelp format help file ;)
  77.                -changed midi_res default to 2.000
  78.                -limit patterns for midi-files to 112, BUZZ-songs
  79.                 should handle more than 112 songpositions, but
  80.                 I couldn't get it to work
  81.                -for BMX+waves changed sample remapping: used dummy samples
  82.                 for empty samples and instruments, so all instrument text
  83.                 messages remain visible
  84.        -----------developed partially functioning buzz merger b2buzz as
  85.        -----------new project
  86.            2b       -added binstr_add for better merging results (option -a)
  87.                -finally got the tabbed dialog for the GUI working,
  88.                 but the 3D input look is gone :(,
  89.                 integrated some merging options into the GUI
  90.  
  91.                -XI-file conversion into empty song with 1 instrument
  92.                -Midi handling:
  93.                 -patches now only include drums if used
  94.                 -better Midi-track handling for Note-ons (use empty tracks,
  95.                  if any, to avoid overwriting of events)
  96.                 -note-delay for midi, ticksubdiv=15 (not used by BUZZ for note-offs?)
  97.                -added commandline options -x* -x+  -xa(=-a) for merging
  98.                -portamiento/2 (why was it doubled?)
  99.            2c       -integrated merger into GUI-version
  100.                -day of the bugs: why did version 2 work at all :]
  101.                 fixed memory corruption and used patterns handling
  102.                -introduced machines.ini and got alot of machine parameters
  103.                -no merging options during conversion anymore, position scaling and
  104.                 instrument shifting done alone with machines.ini instead: more obvious
  105.                 for the user, adapted help-file and GUI to this
  106.                -first try for sample/instrument volume handling
  107.                -now we read MIDI-files 3 times:
  108.                       1) get timing
  109.                       2) get polyphonie+extra channels
  110.                       3) convert
  111.                -real note offs instead off volume 0
  112.                -extra option to not use note delays
  113.                 (because no delay support for note off :(
  114.                -output to organ and some other machines :)
  115.                 some additional data is put into machines.ini, but
  116.                 no general method to include a new generator
  117.                 (problems: parameters -may be omitted--, data init)
  118.  
  119.            3beta       -threading in GUI version
  120.                -added blowup option, now it becomes the:
  121.                  Buzz trans-former m2buzz ;)
  122.                -you can omit second file to transform first only
  123.                -added commandline options for b2buzz
  124.                -Bugfixes: -reinit global data in GUI: note_map
  125.                       -allow some non-standard MIDI files
  126.                        (what data lies behind tracks?)
  127.                       -create ini-file (-i) for commandline to allow
  128.                        DOS only conversion (but why, BUZZ is Win95 ;)
  129.  
  130.            3beta2       -split by instrument :)    this uses an additional pass and
  131.            (3a)        only uses info from the current pattern, so you miss some
  132.                 events, where the instrument number isn't given in the current
  133.                 pattern :(
  134.                -removed unused patterns (not much size gain, but better for editing)
  135.                -integrated it2xm as extern converter for IT 2.xx (not 2.14+)
  136.                -fixed XM patterns, where patternsize!=given patternsize
  137.                 (maybe this was also the bug with files saved by modplugtracker)
  138.                -added some DOS commandline options
  139.                -implemented maxpatterns=112 also for mod/xm (nice for converted midi-files)
  140.                -implemented maximal tracker polyphony (seems to be 18, set in machines.ini),
  141.                 (this probably was the reason for a lot of former crashes)
  142.                -fixed split by instrument: -keep last instrument of every track*pattern
  143.                                -set note-off in old instrument if change to new
  144.                 (should now work as intended and without the above mentioned limits)
  145.                -changed pitch for mod conversion: notes 2 octaves up, frequencies/4,
  146.                 so that notenames are equal to trackers
  147.            3beta3       -option -dp to dump pattern data for DOS-version
  148.         (3c)       -option -dw.. to dump used notes for a wave instrument
  149.                 (to allow to find out unused layers)
  150.                -MIDI: -configurable number of patternlines     (increase for greater possible songlength)
  151.                   -option to start time (and patterns) with first note-on (better for synchronizing)
  152.                -Transformer:
  153.                   -sequence multiply =double song (append all sequences a second time)
  154.                   -transfer notes/volumes of one machine (patterns,sequences) to
  155.                    another machine (other or same type!)
  156.                    (by name of machines? machine 1, type of machine 2)
  157.                    =machine cloning +transpose, select wave for tracker
  158.                   -transpose a machine
  159.                   -put all this into a new tab in the GUI
  160.                -started with volume envelopes
  161.                -tune wave option (allow to use frequencies <11k or >44k)
  162.          3d       -envelopes:
  163.                    -env length set to 324
  164.                    -(more) correct fadeout to release conversion
  165.                -rip ES-9 data and use ES-9 as generator (convert/clone)
  166.                -fixed NT problem with XI (and hence MIDI) conversion
  167.                -fixed transform/merge bug with files containing empty sequences
  168.                -new: zero-loops for click removal with non-looped samples
  169.                -new: count start zero option
  170.                -MIDI: option to use splitted drums (gmp_81.xi...gmp_ff.xi)
  171.                -fixed bug with MIDI program change (was not correctly used if more patches in same channel)
  172.                -option: start BUZZ from GUI (because BUZZ crashes that often :(
  173.                -fixed merge bug with files containing empty waves
  174.                -handling of missing XI (at leat for MIDI conversion with patch change)
  175.                -added 4 new Jeskola machines to machines.ini: Crossdelay,Reverb2,Bass3,Filter2
  176.              ;) now we have Buzz 1.0 and even a new tracker (with less clicks), so the
  177.             zero-loops should already be obsolete, but m2buzz hopefully not
  178.  
  179.                -included first version 0.5 of gus2xi for patch conversion
  180.                -changed default to several drums instead of multi-sampled drumset
  181.                -added some options for gus2xi-patches (drum transpose,follow, no-loop)
  182.                -added wave-rip option (very basic only)
  183.  
  184.            3e      -added midi_tpb (enhances/replaces midi_res):
  185.                  defaults are  midi_res=1.0 and midi_tpb=16,
  186.                  the total resolution (=former midi_res)
  187.                  is now midi_res*midi_tpb/4
  188.               -stripped the empty master sequence for MIDI conversion
  189.               -added vMidiOut and Bass-3 as possible conversion targets
  190.               -changed conversion from MIDI to vMidiOut to include channels and programs
  191.                 - o.k. for MIDI-files type 1, worse results for type 0
  192.                 - choose the following MIDI instrument options for this to work:
  193.                    "use programs","drums follow pitch" and "pitch correction: 0,0"
  194.                 - as usual for MIDI conversion use a TPB value of 16 or above
  195.               -option to set vMidiOut MIDI device
  196.               -remove duplicate patterns
  197.               -use external mod2xm by Arnaud Hasenfratz for S3M-files
  198.                    (and optionally for MOD)
  199.  
  200.        version    3.5       -added contest_number option for IBMC (b2buzz commandline only)
  201.                -fixed BUZZ reader to allow any machine data size
  202.                 (VST_loader and WaveAss bug)
  203.                -changed compiler again (VC seems only compiler for BUZZ machines and player code?)
  204.                     ->fixes for _beginthread and return a+b (speed optimizing)
  205.                -added play option for input modules (uses BASS lib by Ian Luck)
  206.                -added play option for BUZZ songs (uses buzzplay code by Jeskola),
  207.                 (seems not to play all songs and casually crashes the programm or PC!)
  208.                -changed blow_up to change TPB instead of BPM
  209.                -changed optical outfit (especially to put some more attention to the
  210.                 transformer/merger)
  211.                -full/sequential merge option: this takes the complete sequences of both songs
  212.                 (including the master connections/sequences of the 2nd one)
  213.                -two additional setup patterns for the master to mute song A or B and set
  214.                 initial tempo, master volume,...
  215.                -create a second machines.ini (-> machine2.ini) from DLL if playing a song or
  216.                 missing a machine during transforming/merging
  217.                -get BUZZ directory from registry
  218.                -bugfix: the merger always was wrong if there were connections in the
  219.                 second song :(
  220.                -prefix "A " and "B " for machines and master patterns after merging
  221.                -wave shifting for other generators than tracker (drummer), in stats (pro2)
  222.                 and effects (vGraphity)
  223.                -source transposing for single track generators (guru,pro2)
  224.                -warning for master patterns >112
  225.                
  226.        version 3.6       -fixed MOD sampleoffset effect (thanks to Renegade)
  227.                -fixed MOD volume handling and volume slides (thanks to Daniel Baum)
  228.                -allow (almost) any generator as conversion/cloning target;
  229.                 exceptions are generators without note usage (drum + special purpose machines...),
  230.                 even trackless machines (Guru,Guru2, Pro2) are now handl
  231.                -wave-inclusion options now independent from conversion
  232.                 target machine, so alternative trackers (like the Arguelles Pro
  233.                 series) get a chance
  234.                -fixed and improved collecting of machine info
  235.                 (it also tries to find the volume column),
  236.                 machines.ini-file parser (init/empty machine data
  237.                 length now up to 50 bytes, so M4 and co work) and
  238.                 machines.ini
  239.  
  240.  
  241.     version 3.61    
  242.                -bugfix for converter crashes
  243.  
  244.     version 3.62
  245.                -increased machine data maximum again (->Guru 5) 
  246.                    -removed 112 pattern/sequence limit   
  247.                 (Jeskola removed this from BUZZ with some latest 1.2beta, 
  248.                 take care with older BUZZ versions) 
  249.                -updated BASS-lib to BASS 0.8 (-> Win2k compatibility) 
  250.                -changed conversion of MOD effect 0x03 (TonePorta) to 
  251.                 Jeskola  Tracker effect 0x05 from *2 to *lastspeed 
  252.                 (=MOD speed, default 6) 
  253.                -new conversion of MOD 0x05,0x06 to Jeskola Tracker 0x05,0x06 
  254.                 with  last effect, VolumeSlide ignored 
  255.                -Matilde-Tracker effects implementation
  256.  
  257. -bugs:    -there's a bug with multiple pfun machines: if you remove two of them
  258.      buzz crashes: strange (maybe error of buzz?)
  259.     -if the layer order is incorrect buzz crashes if the instruemt is played (C-8 C-0)
  260.     -sometimes missing test for EOF causes hangs/loops of m2buzz
  261.  
  262. -effects to be done:
  263.     -portamientos (amiga freq-tables!)
  264.     -tempo change correction (especially easyxmid), note delay
  265.     -pattern delay
  266.     -note delay for midi-files, maybe single note check?
  267.     -correct volume handling
  268.     -always ;) other effects to do/correct
  269.  
  270. -else to do (* means under construction):
  271.     -3.1 features:
  272.          -MIDI player
  273.          -more stable BUZZ player
  274.          -graphical play/stop buttons? (or all)
  275.          -GetWaves(), RipWave(), PlayWave()? function
  276.  
  277.  
  278.     -more intelligent channel handling(=instrument grouping for machines):
  279.           -split by track: possibility to put several tracks on one machine
  280.           -split by inst:  fuse instruments (drums,...)=several inst. to one machine
  281.           -probably best done by module specific config file
  282.            (something like radio button: use ...
  283.                nothing-print config to file-use config
  284.         in file kind of map track->machine or instr->mach)
  285.           -best buy(really?): fuse/(split?) tracker machines in transformer
  286.  
  287.     -correct (logarithmic?) volume handling
  288.  
  289.     -MIDI:
  290.           -tempo changes
  291.           -simple vMidiOut trigger mechanism even without syncronizing:
  292.               -send a special note/controller as start and
  293.                stop marker for a part in a BUZZ song
  294.               -record them together with keyboard parts in sequencer
  295.               -convert whole MIDI file or just part between markers
  296.                in sync to the marker commands in the existing song
  297.  
  298.     -GUI: -some kind of better scrolling for the logwindows
  299.           -3D look again
  300.     -note delay correction+tempo  (drum.xm,voodoo.mod)
  301.     -BUZZ decoder+encoder???: now that the merger starts working,
  302.      how about some additionally ideas?
  303.          -replace sample x with y (can be done by cloning tracker)
  304.          -"MIDI-controller into column"
  305.          -shift patterns to 64line boundaries (??)
  306.          -removing unused sample layers (drumset!)
  307.  
  308.  
  309. -far or retarded aims:
  310.     -ping pong loop expanding --> probably not too much work, but why
  311.     -LFN support
  312.     -just read that Buzz 2 song format is incompatible, so
  313.            - MOD/MID->Buzz2
  314.            - Buzz1->Buzz2
  315.      are nice possibilities for a converter, but have I to do them :]
  316.